#pragma once

#include "Entity.h"
#include "../SGD Wrappers/SGD_GraphicsManager.h"


class Player : public Entity {

		//	Textures
	SGD::HTexture _player = SGD::INVALID_HANDLE;

		//	Player data
	SGD::Point m_PlayerPos;
	SGD::Rectangle m_PlayerHealthRect;
	SGD::Rectangle m_PlayerStaminaRect;

	SGD::Point m_CamOffset;

	float m_SmellRadius;

	float m_Health;
	float m_Stamina;
	

public:

	Player();
	~Player();

		//	Overrides
	void Update(float elapsedTime) override;
	void Render() override;

	void HandleCollision(const IEntity* pOther) override;
	void SetCamOffset(SGD::Point off) override { m_CamOffset = off; };

	int	GetType() const { return Entity::ENT_PLAYER; }

	

		//	Accessors / Mutators
	SGD::Point GetPosition(){ return m_PlayerPos; }
	SGD::Rectangle GetRect() const ;

	float GetHealth(){ return m_Health; }
	float GetStamina(){ return m_Stamina; }

	void SetHealth(float hp){ m_Health = hp; }
	void SetStamina(float s){ m_Stamina = s; }
};